SEARCH KEYWORD -- PUBLIC KEY
About short URL and its implementation
IntroductionURL shortening is a kind of technique to convert a long URL to a short URL. There are many companies now providing this kind of service, we now take Google's URL shortener service http://goo.gl/ as an example.First we navigate to http://goo.gl/, then we enter a random URL into the text field, here we use http://www.url-to-be-shortened.com as the input, it will return us an shortened URL : http://goo.gl/ZSVMM. URL ParsingWhen we type http://goo.gl/ZSVMM in browser address bar, the DNS...
A return to good code
Stop doing this:public boolean foo() { if (true) { return true; } else { return false; }}It always amazes me when I dig into an open source project, and I see code written by supposed experts, and reviewed by seasoned professionals, and nobody slaps the wrists of the developer who shoves return statements right in the middle of a method.Tell me, how hard is it to do this:public boolean foo() { boolean flag = true; ...
Simple Strategies to Boost Your Android Phone Security
Android is one of the safest operating systems for smartphones and tablets if used correctly. Unfortunately, only a third of Android users use the latest version, and older versions are far more vulnerable than newer ones. Not to mention that many manufacturers take their time when it comes to downloading the latest security patches. A news blog Android Authority ranked the fastest manufacturers in downloading system updates. Here are the results: LG - 78 days Motorola - 88 days HTC - 95 days S...
ANDROID,DATA SECURITY 2019-02-19 07:36:46
Set PHP session timeout
There are many different discussions about PHP sessions. We may often face some weird issues while handling PHP sessions. Sometimes session is expired earlier than expected. Or sometimes the session is not expired. This introduces many confusions. Today we discuss how to set PHP session timeout correctly today. In php.ini, there are three key parameters which will affect the session timeout. session.gc_maxlifetime, session.gc_probability and session.gc_divisor. session.gc_maxlifetime defined the...
Greedy and Nongreedy Matching in a Regular Expression
By default, pattern matching is greedy, which means that the matcher returns the longest match possible. For example, applying the pattern A.*c to AbcAbcA matches AbcAbc rather than the shorter Abc. To do nongreedy matching, a question mark must be added to the quantifier. For example, the pattern A.*?c will find the shortest match possible. COPY // Greedy quantifiers String match = find("A.*c", "AbcAbc"); // AbcAbc match = find("A.+", "AbcAbc"); // AbcAbc // Nongreedy quantifier...
Regular expression,Pattern match,Greedy, 2011-08-09 12:42:28
File System vs Core Data: the image cache test
Code for this project is on GitHub While doing a full re-write of Droplr's iOS app for the 2.0 launch, I couldn't find any good file/image caches out there had a particular feature I really wanted: extending item expiration whenever it's touched. I set out to write my own — which wasn't that much of a challenge — but somewhere along the process I had this crazy idea that perhaps (SQLite-backed) Core Data would be a much better tool for the job: No mismatch between cache index ...
File system.Image cache,Multimedia 2012-02-01 08:52:02
Gmail supports 10 GB attachment after integrating with Google Drive
Google today announced Gmail allows users to send attachment up to 10GB after integrating with Google Drive, the attachment size can be 400 times larger than traditional mail attachment size.Google also added another feature recently, it will pop up a separate window when writing new email. The integration of Gmail with Google Drive will introduce one Google Drive button at the bottom of the popup window, as a solution for sending large attachment.At the same time, because the attachment will b...
Google Drive, Gmail,SkyDrive,attachment 2012-11-28 11:12:56
Java vs F#
Dr Cliff Click of Azul Systems, specialists in manycore JVM systems, recently published a blog post about the performance of Java compared primarily to C and C++ but also discussing C# and .NET. Three of Cliff's comments are of particular interest:Under the heading "Places where C/C++ beats Java for obvious reasons":"Value Types, such as a 'Complex' type require a full object in Java." - Dr Cliff ClickWhat Cliff forgot to mention is that .NET also provides value types and a far more compell...
Java,F#,Performance,JVM 2012-03-07 05:07:31
A mini post on GoLang context
In a GoLang web server, every request coming in will be handled by a goroutine. In the request handler, the logic may also need to create new goroutine to handle other tasks like RPC call. When the request is processed and response is returned, these goroutines created need to be exited so that no goroutine leak should happen. package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/echo", func(w http.ResponseWriter, r *http.Request) { fmt.Println(&r) w.Write(...
It takes hard work. Do the hard work.
Something I’ve been thinking about a lot recently is the idea of simply trying harder with everything I choose to spend my time on. It seems like an elusive thing, the idea of optimal focus and maximum effort. However, I think there is something to be gained from stopping for a moment and considering how focused we are when we do our daily activities. I think two things apply here: single-mindedness and massive effort. To truly excel at something, we need to be very focused. We can...
Development,Hard work, 2012-01-29 04:40:13
RECENT
- Common Pitfalls When Handling JSON in Golang
- Streamlining the Project Invoicing Process: Tools and Strategies
- Performance comparison of string concatenation in Go language
- Why init() is not recommended in Go
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- more>>